import request from '@/utils/request'
import { limit } from '@/consts/consts'
const url = process.env.VUE_APP_CORE_API || 'core'
export default {
  // 5.4.6、根据设备类型获取值描述配置列表
  valueDescListByDeviceType({ deviceType, limit, offset }) {
    return request.get(`${url}/api/v1/valuedescriptor/device-type/${deviceType}/list?offset=${offset}&limit=${limit}`)
  },
  // 5.9.1 查看Hub规则配置 offset limit device_type serial groupId
  hubRuleConfigList(data) {
    if (!data.limit) {
      data.limit = limit
    }
    return request({
      url: `${url}/api/v1/hub-rule/list`,
      method: 'get',
      params: data
    })
  },

  // 5.2.1．查看描述文件配置列表
  modelConfigList(queryData) {
    return request({
      url: `${url}/api/v1/deviceprofile/list`,
      method: 'get',
      params: queryData
    })
  },
  // 5.2.2．新增描述文件配置
  modelConfigAdd(paramsData) {
    return request({
      url: `${url}/api/v1/deviceprofile/add`,
      method: 'post',
      data: paramsData
    })
  },
  // 5.2.3．修改描述文件配置
  modelConfigUpdate(paramsData) {
    return request({
      url: `${url}/api/v1/deviceprofile/update/${paramsData.id}`,
      method: 'put',
      data: paramsData
    })
  },
  // 5.2.4．根据ID描述文件配置详情
  modelConfigDetail(id) {
    return request({
      url: `${url}/api/v1/deviceprofile/detail/id/${id}`,
      method: 'get'
    })
  },
  // 5.2.5．根据ID删除文件配置
  modelConfigDelete(id) {
    return request({
      url: `${url}/api/v1/deviceprofile/del/id/${id}`,
      method: 'delete'
    })
  },
  // 5.2.12．根据设备类型查看描述文件配置详情
  modelConfigListByDevicetype(deviceType) {
    return request({
      url: `${url}/api/v1/deviceprofile/device-type/detail/${deviceType}`,
      method: 'get'
    })
  },

  // 5.3.1．获取命令配置列表
  commandList({ offset, limit }) {
    return request.get(`${url}/api/v1/command/list?offset=${offset}&limit=${limit}`)
  },

  // 5.7.2、查询设备的最新数据
  devicedataNewest(params) {
    return request({
      url: `${url}/api/v1/devicedata/newest`,
      method: 'get',
      params
    })
  },

  // 5.9.2 新增Hub规则配置
  hubRuleConfigAdd(data) {
    return request.post(`${url}/api/v1/hub-rule/add`, data)
  },
  // 5.9.3 修改Hub规则配置
  hubRuleConfigUpdate({ id, data }) {
    return request.put(`${url}/api/v1/hub-rule/update/${id}`, data)
  },
  hubRuleConfigdel(id) {
    return request.delete(`${url}/api/v1/hub-rule/del/${id}`)
  },
  // 设备详情实时数据表头
  equipmentInfoHead(data) {
    if (!data.limit) {
      data.limit = limit
    }
    return request({
      url: `${url}/api/v1/valuedescriptor/list?offset=${data.offset}&limit=${data.limit}&device_type=${data.device_type}`,
      method: 'get'
    })
  },
  // 设备详情查询表格内容
  equipmentInfoData(params, data) {
    return request({
      url: `${url}/api/v1/devicedata/list`,
      method: 'post',
      params,
      data
    })
  },
  // 5.2.12．根据设备类型查看描述文件配置详情 (属性下拉)
  descriptionFileConfiguration(deviceType) {
    return request.get(`${url}/api/v1/deviceprofile/device-type/detail/${deviceType}`)
  }
}
